name: Chroma Client Integration Tests

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main
      - '**'
  workflow_dispatch:

jobs:
  test:
    timeout-minutes: 90
    strategy:
      matrix:
        python: ['3.8', '3.9', '3.10', '3.11', '3.12']
        platform: [ubuntu-latest, windows-latest]
    runs-on: ${{ matrix.platform }}
    steps:
    - name: Checkout
      uses: actions/checkout@v3
    - name: Set up Python ${{ matrix.python }}
      uses: actions/setup-python@v4
      with:
        python-version: ${{ matrix.python }}
    - name: Install test dependencies
      run: python -m pip install -r requirements.txt && python -m pip install -r requirements_dev.txt
    - name: Test
      run: clients/python/integration-test.sh
